| 
                
               | 
              
                
               | 
              
                @@ -390,104 +390,118 @@ def statistic_distributor(request): 
               | 
            
            
            
              | 
                390
               | 
              
                390
               | 
              
                     except AdministratorInfo.DoesNotExist: 
               | 
            
            
            
              | 
                391
               | 
              
                391
               | 
              
                         return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND) 
               | 
            
            
            
              | 
                392
               | 
              
                392
               | 
              
                  
               | 
            
            
            
              | 
                393
               | 
              
                
               | 
              
                -    logs = SaleclerkSubmitLogInfo.objects.filter(ymd__gte=start_time, ymd__lte=end_time, distributor_name__contains=distributor_name, model_uni_name__contains=model_name, test_user=False, dupload=False, test_sn=False, status=True) 
               | 
            
            
            
              | 
                394
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                395
               | 
              
                
               | 
              
                -    daily_logs = list(logs.values('ymd').annotate(num=Count('pk')).order_by('ymd'))
               | 
            
            
            
              | 
                396
               | 
              
                
               | 
              
                -    daily_code1_logs = list(logs.filter(code_version=1).values('ymd').annotate(num=Count('pk')).order_by('ymd'))
               | 
            
            
            
              | 
                397
               | 
              
                
               | 
              
                -    daily_code1_hasScan_logs = list(logs.filter(code_version=1, has_scan=True).values('ymd').annotate(num=Count('pk')).order_by('ymd'))
               | 
            
            
            
              | 
                398
               | 
              
                
               | 
              
                -    daily_code2_logs = list(logs.filter(code_version=2).values('ymd').annotate(num=Count('pk')).order_by('ymd'))
               | 
            
            
            
              | 
                399
               | 
              
                
               | 
              
                -    daily_code2_hasScan_logs = list(logs.filter(code_version=2, has_scan=True).values('ymd').annotate(num=Count('pk')).order_by('ymd'))
               | 
            
            
            
              | 
                400
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                401
               | 
              
                
               | 
              
                -    i1 = 0 
               | 
            
            
            
              | 
                402
               | 
              
                
               | 
              
                -    i2 = 0 
               | 
            
            
            
              | 
                403
               | 
              
                
               | 
              
                -    i3 = 0 
               | 
            
            
            
              | 
                404
               | 
              
                
               | 
              
                -    i4 = 0 
               | 
            
            
            
              | 
                405
               | 
              
                
               | 
              
                -    for i in range(0, len(daily_logs)): 
               | 
            
            
            
              | 
                406
               | 
              
                
               | 
              
                -        daily_logs[i]['code1'] = 0 
               | 
            
            
            
              | 
                407
               | 
              
                
               | 
              
                -        daily_logs[i]['code2'] = 0 
               | 
            
            
            
              | 
                408
               | 
              
                
               | 
              
                -        daily_logs[i]['has_code1_scan_num'] = 0 
               | 
            
            
            
              | 
                409
               | 
              
                
               | 
              
                -        daily_logs[i]['has_code2_scan_num'] = 0 
               | 
            
            
            
              | 
                410
               | 
              
                
               | 
              
                -        if i1 < len(daily_code1_hasScan_logs) and daily_logs[i]['ymd'] == daily_code1_hasScan_logs[i1]['ymd']: 
               | 
            
            
            
              | 
                411
               | 
              
                
               | 
              
                -            daily_logs[i]['has_code1_scan_num'] = daily_code1_hasScan_logs[i1]['num'] 
               | 
            
            
            
              | 
                412
               | 
              
                
               | 
              
                -            i1 += 1 
               | 
            
            
            
              | 
                413
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                414
               | 
              
                
               | 
              
                -        if i2 < len(daily_code1_logs) and daily_logs[i]['ymd'] == daily_code1_logs[i2]['ymd']: 
               | 
            
            
            
              | 
                415
               | 
              
                
               | 
              
                -            daily_logs[i]['code1'] = daily_code1_logs[i2]['num'] 
               | 
            
            
            
              | 
                416
               | 
              
                
               | 
              
                -            i2 += 1 
               | 
            
            
            
              | 
                417
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                418
               | 
              
                
               | 
              
                -        if i3 < len(daily_code2_logs) and daily_logs[i]['ymd'] == daily_code2_logs[i3]['ymd']: 
               | 
            
            
            
              | 
                419
               | 
              
                
               | 
              
                -            daily_logs[i]['code2'] = daily_code2_logs[i3]['num'] 
               | 
            
            
            
              | 
                420
               | 
              
                
               | 
              
                -            i3 += 1 
               | 
            
            
            
              | 
                421
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                422
               | 
              
                
               | 
              
                -        if i4 < len(daily_code2_hasScan_logs) and daily_logs[i]['ymd'] == daily_code2_hasScan_logs[i4]['ymd']: 
               | 
            
            
            
              | 
                423
               | 
              
                
               | 
              
                -            daily_logs[i]['has_code2_scan_num'] = daily_code2_hasScan_logs[i4]['num'] 
               | 
            
            
            
              | 
                424
               | 
              
                
               | 
              
                -            i4 += 1 
               | 
            
            
            
              | 
                425
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                426
               | 
              
                
               | 
              
                -    model_logs = list(logs.values('model_uni_name').annotate(num=Count('pk')).order_by('model_uni_name'))
               | 
            
            
            
              | 
                427
               | 
              
                
               | 
              
                -    model_code1_logs = list(logs.filter(code_version=1).values('model_uni_name').annotate(num=Count('pk')).order_by('model_uni_name'))
               | 
            
            
            
              | 
                428
               | 
              
                
               | 
              
                -    model_code1_hasScan_logs = list(logs.filter(code_version=1, has_scan=True).values('model_uni_name').annotate(num=Count('pk')).order_by('model_uni_name'))
               | 
            
            
            
              | 
                429
               | 
              
                
               | 
              
                -    model_code2_logs = list(logs.filter(code_version=2).values('model_uni_name').annotate(num=Count('pk')).order_by('model_uni_name'))
               | 
            
            
            
              | 
                430
               | 
              
                
               | 
              
                -    model_code2_hasScan_logs = list(logs.filter(code_version=2, has_scan=True).values('model_uni_name').annotate(num=Count('pk')).order_by('model_uni_name'))
               | 
            
            
            
              | 
                431
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                432
               | 
              
                
               | 
              
                -    i1 = 0 
               | 
            
            
            
              | 
                433
               | 
              
                
               | 
              
                -    i2 = 0 
               | 
            
            
            
              | 
                434
               | 
              
                
               | 
              
                -    i3 = 0 
               | 
            
            
            
              | 
                435
               | 
              
                
               | 
              
                -    i4 = 0 
               | 
            
            
            
              | 
                436
               | 
              
                
               | 
              
                -    for i in range(0, len(model_logs)): 
               | 
            
            
            
              | 
                437
               | 
              
                
               | 
              
                -        model_logs[i]['code1'] = 0 
               | 
            
            
            
              | 
                438
               | 
              
                
               | 
              
                -        model_logs[i]['code2'] = 0 
               | 
            
            
            
              | 
                439
               | 
              
                
               | 
              
                -        model_logs[i]['has_code1_scan_num'] = 0 
               | 
            
            
            
              | 
                440
               | 
              
                
               | 
              
                -        model_logs[i]['has_code2_scan_num'] = 0 
               | 
            
            
            
              | 
                441
               | 
              
                
               | 
              
                -        if i1 < len(model_code1_hasScan_logs) and model_logs[i]['model_uni_name'] == model_code1_hasScan_logs[i1]['model_uni_name']: 
               | 
            
            
            
              | 
                442
               | 
              
                
               | 
              
                -            model_logs[i]['has_code1_scan_num'] = model_code1_hasScan_logs[i1]['num'] 
               | 
            
            
            
              | 
                443
               | 
              
                
               | 
              
                -            i1 += 1 
               | 
            
            
            
              | 
                444
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                445
               | 
              
                
               | 
              
                -        if i2 < len(model_code1_logs) and model_logs[i]['model_uni_name'] == model_code1_logs[i2]['model_uni_name']: 
               | 
            
            
            
              | 
                446
               | 
              
                
               | 
              
                -            model_logs[i]['code1'] = model_code1_logs[i2]['num'] 
               | 
            
            
            
              | 
                447
               | 
              
                
               | 
              
                -            i2 += 1 
               | 
            
            
            
              | 
                448
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                449
               | 
              
                
               | 
              
                -        if i3 < len(model_code2_logs) and model_logs[i]['model_uni_name'] == model_code2_logs[i3]['model_uni_name']: 
               | 
            
            
            
              | 
                450
               | 
              
                
               | 
              
                -            model_logs[i]['code2'] = model_code2_logs[i3]['num'] 
               | 
            
            
            
              | 
                451
               | 
              
                
               | 
              
                -            i3 += 1 
               | 
            
            
            
              | 
                452
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                453
               | 
              
                
               | 
              
                -        if i4 < len(model_code2_hasScan_logs) and model_logs[i]['model_uni_name'] == model_code2_hasScan_logs[i4]['model_uni_name']: 
               | 
            
            
            
              | 
                454
               | 
              
                
               | 
              
                -            model_logs[i]['has_code2_scan_num'] = model_code2_hasScan_logs[i4]['num'] 
               | 
            
            
            
              | 
                455
               | 
              
                
               | 
              
                -            i4 += 1 
               | 
            
            
            
              | 
                456
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                457
               | 
              
                
               | 
              
                -    model_logs.sort(key=lambda k: (-k['num'])) 
               | 
            
            
            
              | 
                458
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                459
               | 
              
                
               | 
              
                -    distributor_logs = list(logs.values('distributor_name').annotate(num=Count('pk')).order_by('distributor_name'))
               | 
            
            
            
              | 
                460
               | 
              
                
               | 
              
                -    distributor_code1_logs = list(logs.filter(code_version=1).values('distributor_name').annotate(num=Count('pk')).order_by('distributor_name'))
               | 
            
            
            
              | 
                461
               | 
              
                
               | 
              
                -    distributor_code1_hasScan_logs = list(logs.filter(code_version=1, has_scan=True).values('distributor_name').annotate(num=Count('pk')).order_by('distributor_name'))
               | 
            
            
            
              | 
                462
               | 
              
                
               | 
              
                -    distributor_code2_logs = list(logs.filter(code_version=2).values('distributor_name').annotate(num=Count('pk')).order_by('distributor_name'))
               | 
            
            
            
              | 
                463
               | 
              
                
               | 
              
                -    distributor_code2_hasScan_logs = list(logs.filter(code_version=2, has_scan=True).values('distributor_name').annotate(num=Count('pk')).order_by('distributor_name'))
               | 
            
            
            
              | 
                464
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                465
               | 
              
                
               | 
              
                -    i1 = 0 
               | 
            
            
            
              | 
                466
               | 
              
                
               | 
              
                -    i2 = 0 
               | 
            
            
            
              | 
                467
               | 
              
                
               | 
              
                -    i3 = 0 
               | 
            
            
            
              | 
                468
               | 
              
                
               | 
              
                -    i4 = 0 
               | 
            
            
            
              | 
                469
               | 
              
                
               | 
              
                -    for i in range(0, len(distributor_logs)): 
               | 
            
            
            
              | 
                470
               | 
              
                
               | 
              
                -        distributor_logs[i]['code1'] = 0 
               | 
            
            
            
              | 
                471
               | 
              
                
               | 
              
                -        distributor_logs[i]['code2'] = 0 
               | 
            
            
            
              | 
                472
               | 
              
                
               | 
              
                -        distributor_logs[i]['has_code1_scan_num'] = 0 
               | 
            
            
            
              | 
                473
               | 
              
                
               | 
              
                -        distributor_logs[i]['has_code2_scan_num'] = 0 
               | 
            
            
            
              | 
                474
               | 
              
                
               | 
              
                -        if i1 < len(distributor_code1_hasScan_logs) and distributor_logs[i]['distributor_name'] == distributor_code1_hasScan_logs[i1]['distributor_name']: 
               | 
            
            
            
              | 
                475
               | 
              
                
               | 
              
                -            distributor_logs[i]['has_code1_scan_num'] = distributor_code1_hasScan_logs[i1]['num'] 
               | 
            
            
            
              | 
                476
               | 
              
                
               | 
              
                -            i1 += 1 
               | 
            
            
            
              | 
                477
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                478
               | 
              
                
               | 
              
                -        if i2 < len(distributor_code1_logs) and distributor_logs[i]['distributor_name'] == distributor_code1_logs[i2]['distributor_name']: 
               | 
            
            
            
              | 
                479
               | 
              
                
               | 
              
                -            distributor_logs[i]['code1'] = distributor_code1_logs[i2]['num'] 
               | 
            
            
            
              | 
                480
               | 
              
                
               | 
              
                -            i2 += 1 
               | 
            
            
            
              | 
                481
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                482
               | 
              
                
               | 
              
                -        if i3 < len(distributor_code2_logs) and distributor_logs[i]['distributor_name'] == distributor_code2_logs[i3]['distributor_name']: 
               | 
            
            
            
              | 
                483
               | 
              
                
               | 
              
                -            distributor_logs[i]['code2'] = distributor_code2_logs[i3]['num'] 
               | 
            
            
            
              | 
                484
               | 
              
                
               | 
              
                -            i3 += 1 
               | 
            
            
            
              | 
                485
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                486
               | 
              
                
               | 
              
                -        if i4 < len(distributor_code2_hasScan_logs) and distributor_logs[i]['distributor_name'] == distributor_code2_hasScan_logs[i4]['distributor_name']: 
               | 
            
            
            
              | 
                487
               | 
              
                
               | 
              
                -            distributor_logs[i]['has_code2_scan_num'] = distributor_code2_hasScan_logs[i4]['num'] 
               | 
            
            
            
              | 
                488
               | 
              
                
               | 
              
                -            i4 += 1 
               | 
            
            
            
              | 
                489
               | 
              
                
               | 
              
                - 
               | 
            
            
            
              | 
                490
               | 
              
                
               | 
              
                -    distributor_logs.sort(key=lambda k: (-k['num'])) 
               | 
            
            
            
              | 
                
               | 
              
                393
               | 
              
                +    daily_logs = SaleclerkSubmitLogInfo.objects.raw('select id, ymd, Count(*) AS num, Count(code_version=1 or NULL) AS code1 , Count(code_version=2 or NULL) AS code2, Count((code_version=1 AND has_scan=True) or NULL) AS has_code1_scan_num, Count((code_version=2 AND has_scan=True) or NULL) AS has_code2_scan_num FROM integral_saleclerksubmitloginfo where ymd >= %s AND ymd <= %s AND test_user=False AND dupload=False AND test_sn=False AND status=True AND CONTAINS(model_uni_name, %s) AND CONTAINS(distributor_name, %s) GROUP BY ymd;', [start_time, end_time, model_name, distributor_name])
               | 
            
            
            
              | 
                
               | 
              
                394
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                395
               | 
              
                +    daily_logs = [{'ymd': log.ymd, 'num': log.num, 'code1': log.code1, 'code2': log.code2, 'has_code1_scan_num': log.has_code1_scan_num, 'has_code2_scan_num': log.has_code2_scan_num} for log in daily_logs]
               | 
            
            
            
              | 
                
               | 
              
                396
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                397
               | 
              
                +    if model_name == '': 
               | 
            
            
            
              | 
                
               | 
              
                398
               | 
              
                +        model_logs = SaleclerkSubmitLogInfo.objects.raw('select id, model_uni_name, Count(*) AS num, Count(code_version=1 or NULL) AS code1 , Count(code_version=2 or NULL) AS code2, Count((code_version=1 AND has_scan=True) or NULL) AS has_code1_scan_num, Count((code_version=2 AND has_scan=True) or NULL) AS has_code2_scan_num FROM integral_saleclerksubmitloginfo where ymd >= %s AND ymd <= %s AND test_user=False AND dupload=False AND test_sn=False AND status=True AND CONTAINS(distributor_name, %s) GROUP BY model_uni_name;', [start_time, end_time, distributor_name])
               | 
            
            
            
              | 
                
               | 
              
                399
               | 
              
                +         
               | 
            
            
            
              | 
                
               | 
              
                400
               | 
              
                +        model_logs = [{'model_uni_name': log.model_uni_name, 'num': log.num, 'code1': log.code1, 'code2': log.code2, 'has_code1_scan_num': log.has_code1_scan_num, 'has_code2_scan_num': log.has_code2_scan_num} for log in daily_logs]
               | 
            
            
            
              | 
                
               | 
              
                401
               | 
              
                +     
               | 
            
            
            
              | 
                
               | 
              
                402
               | 
              
                +    if distributor_name == '': 
               | 
            
            
            
              | 
                
               | 
              
                403
               | 
              
                +        distributor_logs = SaleclerkSubmitLogInfo.objects.raw('select id, distributor_name, Count(*) AS num, Count(code_version=1 or NULL) AS code1 , Count(code_version=2 or NULL) AS code2, Count((code_version=1 AND has_scan=True) or NULL) AS has_code1_scan_num, Count((code_version=2 AND has_scan=True) or NULL) AS has_code2_scan_num FROM integral_saleclerksubmitloginfo where ymd >= %s AND ymd <= %s AND test_user=False AND dupload=False AND test_sn=False AND status=True AND CONTAINS(model_uni_name, %s) GROUP BY distributor_name;', [start_time, end_time, model_name])
               | 
            
            
            
              | 
                
               | 
              
                404
               | 
              
                +         
               | 
            
            
            
              | 
                
               | 
              
                405
               | 
              
                +        distributor_logs = [{'distributor_name': log.distributor_name, 'num': log.num, 'code1': log.code1, 'code2': log.code2, 'has_code1_scan_num': log.has_code1_scan_num, 'has_code2_scan_num': log.has_code2_scan_num} for log in daily_logs]
               | 
            
            
            
              | 
                
               | 
              
                406
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                407
               | 
              
                +    # daily_logs = list(logs.values('ymd').annotate(num=Count('pk')).order_by('ymd'))
               | 
            
            
            
              | 
                
               | 
              
                408
               | 
              
                +    # daily_code1_logs = list(logs.filter(code_version=1).values('ymd').annotate(num=Count('pk')).order_by('ymd'))
               | 
            
            
            
              | 
                
               | 
              
                409
               | 
              
                +    # daily_code1_hasScan_logs = list(logs.filter(code_version=1, has_scan=True).values('ymd').annotate(num=Count('pk')).order_by('ymd'))
               | 
            
            
            
              | 
                
               | 
              
                410
               | 
              
                +    # daily_code2_logs = list(logs.filter(code_version=2).values('ymd').annotate(num=Count('pk')).order_by('ymd'))
               | 
            
            
            
              | 
                
               | 
              
                411
               | 
              
                +    # daily_code2_hasScan_logs = list(logs.filter(code_version=2, has_scan=True).values('ymd').annotate(num=Count('pk')).order_by('ymd'))
               | 
            
            
            
              | 
                
               | 
              
                412
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                413
               | 
              
                +    # i1 = 0 
               | 
            
            
            
              | 
                
               | 
              
                414
               | 
              
                +    # i2 = 0 
               | 
            
            
            
              | 
                
               | 
              
                415
               | 
              
                +    # i3 = 0 
               | 
            
            
            
              | 
                
               | 
              
                416
               | 
              
                +    # i4 = 0 
               | 
            
            
            
              | 
                
               | 
              
                417
               | 
              
                +    # for i in range(0, len(daily_logs)): 
               | 
            
            
            
              | 
                
               | 
              
                418
               | 
              
                +    #     daily_logs[i]['code1'] = 0 
               | 
            
            
            
              | 
                
               | 
              
                419
               | 
              
                +    #     daily_logs[i]['code2'] = 0 
               | 
            
            
            
              | 
                
               | 
              
                420
               | 
              
                +    #     daily_logs[i]['has_code1_scan_num'] = 0 
               | 
            
            
            
              | 
                
               | 
              
                421
               | 
              
                +    #     daily_logs[i]['has_code2_scan_num'] = 0 
               | 
            
            
            
              | 
                
               | 
              
                422
               | 
              
                +    #     if i1 < len(daily_code1_hasScan_logs) and daily_logs[i]['ymd'] == daily_code1_hasScan_logs[i1]['ymd']: 
               | 
            
            
            
              | 
                
               | 
              
                423
               | 
              
                +    #         daily_logs[i]['has_code1_scan_num'] = daily_code1_hasScan_logs[i1]['num'] 
               | 
            
            
            
              | 
                
               | 
              
                424
               | 
              
                +    #         i1 += 1 
               | 
            
            
            
              | 
                
               | 
              
                425
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                426
               | 
              
                +    #     if i2 < len(daily_code1_logs) and daily_logs[i]['ymd'] == daily_code1_logs[i2]['ymd']: 
               | 
            
            
            
              | 
                
               | 
              
                427
               | 
              
                +    #         daily_logs[i]['code1'] = daily_code1_logs[i2]['num'] 
               | 
            
            
            
              | 
                
               | 
              
                428
               | 
              
                +    #         i2 += 1 
               | 
            
            
            
              | 
                
               | 
              
                429
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                430
               | 
              
                +    #     if i3 < len(daily_code2_logs) and daily_logs[i]['ymd'] == daily_code2_logs[i3]['ymd']: 
               | 
            
            
            
              | 
                
               | 
              
                431
               | 
              
                +    #         daily_logs[i]['code2'] = daily_code2_logs[i3]['num'] 
               | 
            
            
            
              | 
                
               | 
              
                432
               | 
              
                +    #         i3 += 1 
               | 
            
            
            
              | 
                
               | 
              
                433
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                434
               | 
              
                +    #     if i4 < len(daily_code2_hasScan_logs) and daily_logs[i]['ymd'] == daily_code2_hasScan_logs[i4]['ymd']: 
               | 
            
            
            
              | 
                
               | 
              
                435
               | 
              
                +    #         daily_logs[i]['has_code2_scan_num'] = daily_code2_hasScan_logs[i4]['num'] 
               | 
            
            
            
              | 
                
               | 
              
                436
               | 
              
                +    #         i4 += 1 
               | 
            
            
            
              | 
                
               | 
              
                437
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                438
               | 
              
                +    # if model_name: 
               | 
            
            
            
              | 
                
               | 
              
                439
               | 
              
                +    #     model_logs = list(logs.values('model_uni_name').annotate(num=Count('pk')).order_by('model_uni_name'))
               | 
            
            
            
              | 
                
               | 
              
                440
               | 
              
                +    #     model_code1_logs = list(logs.filter(code_version=1).values('model_uni_name').annotate(num=Count('pk')).order_by('model_uni_name'))
               | 
            
            
            
              | 
                
               | 
              
                441
               | 
              
                +    #     model_code1_hasScan_logs = list(logs.filter(code_version=1, has_scan=True).values('model_uni_name').annotate(num=Count('pk')).order_by('model_uni_name'))
               | 
            
            
            
              | 
                
               | 
              
                442
               | 
              
                +    #     model_code2_logs = list(logs.filter(code_version=2).values('model_uni_name').annotate(num=Count('pk')).order_by('model_uni_name'))
               | 
            
            
            
              | 
                
               | 
              
                443
               | 
              
                +    #     model_code2_hasScan_logs = list(logs.filter(code_version=2, has_scan=True).values('model_uni_name').annotate(num=Count('pk')).order_by('model_uni_name'))
               | 
            
            
            
              | 
                
               | 
              
                444
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                445
               | 
              
                +    #     i1 = 0 
               | 
            
            
            
              | 
                
               | 
              
                446
               | 
              
                +    #     i2 = 0 
               | 
            
            
            
              | 
                
               | 
              
                447
               | 
              
                +    #     i3 = 0 
               | 
            
            
            
              | 
                
               | 
              
                448
               | 
              
                +    #     i4 = 0 
               | 
            
            
            
              | 
                
               | 
              
                449
               | 
              
                +    #     for i in range(0, len(model_logs)): 
               | 
            
            
            
              | 
                
               | 
              
                450
               | 
              
                +    #         model_logs[i]['code1'] = 0 
               | 
            
            
            
              | 
                
               | 
              
                451
               | 
              
                +    #         model_logs[i]['code2'] = 0 
               | 
            
            
            
              | 
                
               | 
              
                452
               | 
              
                +    #         model_logs[i]['has_code1_scan_num'] = 0 
               | 
            
            
            
              | 
                
               | 
              
                453
               | 
              
                +    #         model_logs[i]['has_code2_scan_num'] = 0 
               | 
            
            
            
              | 
                
               | 
              
                454
               | 
              
                +    #         if i1 < len(model_code1_hasScan_logs) and model_logs[i]['model_uni_name'] == model_code1_hasScan_logs[i1]['model_uni_name']: 
               | 
            
            
            
              | 
                
               | 
              
                455
               | 
              
                +    #             model_logs[i]['has_code1_scan_num'] = model_code1_hasScan_logs[i1]['num'] 
               | 
            
            
            
              | 
                
               | 
              
                456
               | 
              
                +    #             i1 += 1 
               | 
            
            
            
              | 
                
               | 
              
                457
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                458
               | 
              
                +    #         if i2 < len(model_code1_logs) and model_logs[i]['model_uni_name'] == model_code1_logs[i2]['model_uni_name']: 
               | 
            
            
            
              | 
                
               | 
              
                459
               | 
              
                +    #             model_logs[i]['code1'] = model_code1_logs[i2]['num'] 
               | 
            
            
            
              | 
                
               | 
              
                460
               | 
              
                +    #             i2 += 1 
               | 
            
            
            
              | 
                
               | 
              
                461
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                462
               | 
              
                +    #         if i3 < len(model_code2_logs) and model_logs[i]['model_uni_name'] == model_code2_logs[i3]['model_uni_name']: 
               | 
            
            
            
              | 
                
               | 
              
                463
               | 
              
                +    #             model_logs[i]['code2'] = model_code2_logs[i3]['num'] 
               | 
            
            
            
              | 
                
               | 
              
                464
               | 
              
                +    #             i3 += 1 
               | 
            
            
            
              | 
                
               | 
              
                465
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                466
               | 
              
                +    #         if i4 < len(model_code2_hasScan_logs) and model_logs[i]['model_uni_name'] == model_code2_hasScan_logs[i4]['model_uni_name']: 
               | 
            
            
            
              | 
                
               | 
              
                467
               | 
              
                +    #             model_logs[i]['has_code2_scan_num'] = model_code2_hasScan_logs[i4]['num'] 
               | 
            
            
            
              | 
                
               | 
              
                468
               | 
              
                +    #             i4 += 1 
               | 
            
            
            
              | 
                
               | 
              
                469
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                470
               | 
              
                +    #     model_logs.sort(key=lambda k: (-k['num'])) 
               | 
            
            
            
              | 
                
               | 
              
                471
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                472
               | 
              
                +    # if distributor_name: 
               | 
            
            
            
              | 
                
               | 
              
                473
               | 
              
                +    #     distributor_logs = list(logs.values('distributor_name').annotate(num=Count('pk')).order_by('distributor_name'))
               | 
            
            
            
              | 
                
               | 
              
                474
               | 
              
                +    #     distributor_code1_logs = list(logs.filter(code_version=1).values('distributor_name').annotate(num=Count('pk')).order_by('distributor_name'))
               | 
            
            
            
              | 
                
               | 
              
                475
               | 
              
                +    #     distributor_code1_hasScan_logs = list(logs.filter(code_version=1, has_scan=True).values('distributor_name').annotate(num=Count('pk')).order_by('distributor_name'))
               | 
            
            
            
              | 
                
               | 
              
                476
               | 
              
                +    #     distributor_code2_logs = list(logs.filter(code_version=2).values('distributor_name').annotate(num=Count('pk')).order_by('distributor_name'))
               | 
            
            
            
              | 
                
               | 
              
                477
               | 
              
                +    #     distributor_code2_hasScan_logs = list(logs.filter(code_version=2, has_scan=True).values('distributor_name').annotate(num=Count('pk')).order_by('distributor_name'))
               | 
            
            
            
              | 
                
               | 
              
                478
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                479
               | 
              
                +    #     i1 = 0 
               | 
            
            
            
              | 
                
               | 
              
                480
               | 
              
                +    #     i2 = 0 
               | 
            
            
            
              | 
                
               | 
              
                481
               | 
              
                +    #     i3 = 0 
               | 
            
            
            
              | 
                
               | 
              
                482
               | 
              
                +    #     i4 = 0 
               | 
            
            
            
              | 
                
               | 
              
                483
               | 
              
                +    #     for i in range(0, len(distributor_logs)): 
               | 
            
            
            
              | 
                
               | 
              
                484
               | 
              
                +    #         distributor_logs[i]['code1'] = 0 
               | 
            
            
            
              | 
                
               | 
              
                485
               | 
              
                +    #         distributor_logs[i]['code2'] = 0 
               | 
            
            
            
              | 
                
               | 
              
                486
               | 
              
                +    #         distributor_logs[i]['has_code1_scan_num'] = 0 
               | 
            
            
            
              | 
                
               | 
              
                487
               | 
              
                +    #         distributor_logs[i]['has_code2_scan_num'] = 0 
               | 
            
            
            
              | 
                
               | 
              
                488
               | 
              
                +    #         if i1 < len(distributor_code1_hasScan_logs) and distributor_logs[i]['distributor_name'] == distributor_code1_hasScan_logs[i1]['distributor_name']: 
               | 
            
            
            
              | 
                
               | 
              
                489
               | 
              
                +    #             distributor_logs[i]['has_code1_scan_num'] = distributor_code1_hasScan_logs[i1]['num'] 
               | 
            
            
            
              | 
                
               | 
              
                490
               | 
              
                +    #             i1 += 1 
               | 
            
            
            
              | 
                
               | 
              
                491
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                492
               | 
              
                +    #         if i2 < len(distributor_code1_logs) and distributor_logs[i]['distributor_name'] == distributor_code1_logs[i2]['distributor_name']: 
               | 
            
            
            
              | 
                
               | 
              
                493
               | 
              
                +    #             distributor_logs[i]['code1'] = distributor_code1_logs[i2]['num'] 
               | 
            
            
            
              | 
                
               | 
              
                494
               | 
              
                +    #             i2 += 1 
               | 
            
            
            
              | 
                
               | 
              
                495
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                496
               | 
              
                +    #         if i3 < len(distributor_code2_logs) and distributor_logs[i]['distributor_name'] == distributor_code2_logs[i3]['distributor_name']: 
               | 
            
            
            
              | 
                
               | 
              
                497
               | 
              
                +    #             distributor_logs[i]['code2'] = distributor_code2_logs[i3]['num'] 
               | 
            
            
            
              | 
                
               | 
              
                498
               | 
              
                +    #             i3 += 1 
               | 
            
            
            
              | 
                
               | 
              
                499
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                500
               | 
              
                +    #         if i4 < len(distributor_code2_hasScan_logs) and distributor_logs[i]['distributor_name'] == distributor_code2_hasScan_logs[i4]['distributor_name']: 
               | 
            
            
            
              | 
                
               | 
              
                501
               | 
              
                +    #             distributor_logs[i]['has_code2_scan_num'] = distributor_code2_hasScan_logs[i4]['num'] 
               | 
            
            
            
              | 
                
               | 
              
                502
               | 
              
                +    #             i4 += 1 
               | 
            
            
            
              | 
                
               | 
              
                503
               | 
              
                + 
               | 
            
            
            
              | 
                
               | 
              
                504
               | 
              
                +    #     distributor_logs.sort(key=lambda k: (-k['num'])) 
               | 
            
            
            
              | 
                491
               | 
              
                505
               | 
              
                  
               | 
            
            
            
              | 
                492
               | 
              
                506
               | 
              
                     return response(200, 'Get Distributor Statistic Success', u'获取经销商统计成功', data={
               | 
            
            
            
              | 
                493
               | 
              
                507
               | 
              
                         'daily_logs': daily_logs, 
               |